Specification Languages for Preserving Consistency between Models of Different Languages
نویسنده
چکیده
In this thesis, we present three languages for the development of tools that keep di erent system representations consistent during software development. When complex IT systems are developed, it is common practice to use several programming and modelling languages. System parts are designed and represented using di erent languages in order to support various design and development tasks. The overall structure of a system, for example, is often represented with an architectural description language. To specify the detailed behavior of individual system parts, a state-based modelling language or a general purpose programming language are, however, more appropriate. As these system parts and development tasks are related, these representations often also contain redundant information. Such partially redundant representations are usually not used in a static way but evolve during system development, which can lead to inconsistencies that yield faulty designs and implementations. Therefore, consistent system representations are crucial for the development of such systems. There are various approaches to achieve consistent system representations by avoiding inconsistencies. It is possible, for example, to create a central, redundancy-free representation that encompasses all information so that all other representations can be projected from it1. Creating such a redundancy-free representation and editable projections is, however, not always feasible, especially if existing languages and editors have to be supported. Another possibility to evade inconsistencies is to only allow modi cations for a piece of information at a unique source representation so that all other representations can only read this information. This makes it possible to always override such information in all read-only representations, but it also makes it necessary to completely isolate all editable regions of representations. If inconsistent representations cannot be completely avoided during system development, developers or tools have to actively preserve consistency when representations are modi ed. Manual consistency preservation is, however, a time-consuming and errorprone task. Therefore, consistency preservation tools that semi-automatically update models during system development are developed in academia and industry. Such special software engineering tools can be developed with general purpose programming languages and with dedicated languages for consistency preservation. In this thesis, we have identi ed four major challenges that are currently only insu ciently addressed by languages for developing consistency preservation tools. First, these languages do not combine speci c consistency preservation support with the expressive power and exibility of established general purpose programming languages. Therefore, developers are either restricted to designated use cases or have to repeatedly develop solutions to generic consistency preservation problems. Second, these languages either support solutionor problem-oriented programming paradigms, which forces developers to also provide preservation instructions for cases in which consistency declarations would be su cient. Third, these languages do not abstract away from enough consistency preservation details, which requires developers to explicitly consider, for example, preservation directions, change types, or matching problems. Last, these languages yield preservation behavior that often appears to be detached from the speci c use case when interpreters and compilers run or generate code that is not needed to realize a particular consistency speci cation. 1C. Atkinson et al. “Orthographic Software Modeling: A Practical Approach to View-Based Development”. In: Evaluation of Novel Approaches to Software Engineering. Vol. 69. Communications in Computer and Information Science. Berlin/Heidelberg: Springer, 2010, pp. 206–219.
منابع مشابه
Web Service Choreography Verification Using Z Formal Specification
Web Service Choreography Description Language (WS-CDL) describes and orchestrates the services interactions among multiple participants. WS-CDL verification is essential since the interactions would lead to mismatches. Existing works verify the messages ordering, the flow of messages, and the expected results from collaborations. In this paper, we present a Z specification of WS-CDL. Besides ve...
متن کاملProviding interoperation among different information systems while preserving the security requirements of individual systems
Providing interoperation among different information systems while preserving their individual security requirements led to the development of flexible Access Control Models. The Authorization Specification Language (ASL) is a significant part of the infrastructure that can support and enforce uniform security requirements across platforms. For extensive deployment of these frameworks we need m...
متن کاملTowards a Data Consistency Modeling and Testing Framework for MOF Defined Languages
The number of online data sources is continuously increasing, and related data are often available from several sources. However accessing data from multiple sources is hindered by the use of different languages and schemas at the sources, as well as by inconsistencies among the data. There is thus a growing need for tools that enable the testing of consistency among data from different sources...
متن کاملInter-Modelling with Graphical Constraints: Foundations and Applications
Model-Driven Engineering (MDE) promotes an active use of models in the different phases of the development, so that the construction of systems usually involves a number of models expressed in different languages and levels of abstraction; therefore, there is the constant need to compare, generate and update models and their relations. We call inter-modelling to the activity of building models ...
متن کاملA Rule-Based System for Assessing Consistency Between UML Models
The main goal of requirements specification is the transformation of a “rough draft” of stakeholder needs and expectations into a semi-formal specification, represented by several diagrams, commonly UML diagrams. These diagrams must be consistent with each other, but consistency among different UML diagrams is not defined by the UML specification, and the research about inter-model consistency ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2017